package com.itheima.jobs;

import com.itheima.constant.RedisConstant;
import com.itheima.utils.QiniuUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import redis.clients.jedis.JedisPool;

import java.util.Set;
@Component
public class ClearImgJob {


    @Autowired
    private JedisPool jedisPool;
    /*
    *  定时的去比较redis的两个set集合，比较出来的差异会封装的一个新的set集合
    *
    *   定时去清理七牛云中多余的图片，还需要将七牛云对应的redis的set集合中的多余的图片也要清空。
    *
    *
    * */
    public void clearImg(){

        //比较两个redis的set集合，将多余的图片存入到一个新的set集合中
        Set<String> set = jedisPool.getResource().sdiff(RedisConstant.SETMEAL_PIC_RESOURCES, RedisConstant.SETMEAL_PIC_DB_RESOURCES);
        for (String img : set) {
            //删除七牛云中的多余的图片
            QiniuUtils.deleteFileFromQiniu(img);

            //删除七牛云对应的redis中的多余的图片
            jedisPool.getResource().srem(RedisConstant.SETMEAL_PIC_RESOURCES,img);

        }

    }
}
